Many networked database applications use database engines to manage data storage and retrieval. Database engines can be in the form of servers which accept communication connections, receive instructions over the communication connections, perform database operations according to the instructions and return results over the communication connections. Database engines may also be embedded into application programs so that the database engines run as part of the application processes.
The response time for a query in a database engine varies, depending on the database size, the complexity of the query, the workload of the database engine, etc. Some queries can take such long periods of response time that a user may want to stop waiting for the response.
Some database engines are capable of accepting instructions to cancel previously received query tasks. Some database engines can automatically cancel the queries that were previously submitted over a communication connection when the communication connection is broken.
Web browsers and the Internet provide a portable and versatile way to provide user interfaces. Many web-based database applications have been developed to utilize web browser and web servers to implement user interfaces across web links. In a typical web-based database application, one or more clients are coupled to a database via a web server and an application server. The clients may include a browser window and an application running in the browser window. Users may input requests to the client in order to access or to query the database. The client communicates with the web server; the web server then communicates with the application server which uses the database engine to perform queries.